package com.lian.aieduc.service;

import com.lian.aieduc.model.dto.*;
import com.lian.aieduc.model.vo.UserVO;
import com.lian.aieduc.utils.Result;
import jakarta.mail.MessagingException;

public interface UsersService {
    Result<String> signInEmail(SignUpEmailDTO signUpEmailDTO);

    Result<String> sendSMS(SendSmsDTO sendSmsDTO);


    Result<String> signInSms(SmsSignInDTO smsSignInDTO);

    Result<String> sendEmailCode(SendMailCodeDTO sendMailCodeDTO) throws MessagingException;

    Result<UserVO> getUserById(Long userId);

    Long pareTokenGetUserId(String authorization);

    Result<UserVO> updateUserInfoById(Long userId, UserInfoDTO userInfoDTO);
}
